﻿
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.Linq;
using System.Threading.Tasks;
using WalkingTec.Mvvm.Core;
using WalkingTec.Mvvm.Core.Extensions;
using Digitalmes.Model.SpcManagement;
using Digitalmes.Model;

namespace Digitalmes.ViewModel.SpcManagement.SpcAnalysisVMs
{
    public partial class SpcAnalysisTemplateVM : BaseTemplateVM
    {
        
        [Display(Name = "_Model._SpcAnalysis._ChartName")]
        public ExcelPropety ChartName_Excel = ExcelPropety.CreateProperty<SpcAnalysis>(x => x.ChartName);
        [Display(Name = "_Model._SpcAnalysis._UCL")]
        public ExcelPropety UCL_Excel = ExcelPropety.CreateProperty<SpcAnalysis>(x => x.UCL);
        [Display(Name = "_Model._SpcAnalysis._CL")]
        public ExcelPropety CL_Excel = ExcelPropety.CreateProperty<SpcAnalysis>(x => x.CL);
        [Display(Name = "_Model._SpcAnalysis._LCL")]
        public ExcelPropety LCL_Excel = ExcelPropety.CreateProperty<SpcAnalysis>(x => x.LCL);
        [Display(Name = "_Model._SpcAnalysis._USL")]
        public ExcelPropety USL_Excel = ExcelPropety.CreateProperty<SpcAnalysis>(x => x.USL);
        [Display(Name = "_Model._SpcAnalysis._LSL")]
        public ExcelPropety LSL_Excel = ExcelPropety.CreateProperty<SpcAnalysis>(x => x.LSL);
        [Display(Name = "_Model._SpcAnalysis._ProductId")]
        public ExcelPropety ProductId_Excel = ExcelPropety.CreateProperty<SpcAnalysis>(x => x.ProductId);
        [Display(Name = "_Model._SpcAnalysis._ProductName")]
        public ExcelPropety ProductName_Excel = ExcelPropety.CreateProperty<SpcAnalysis>(x => x.ProductName);
        [Display(Name = "_Model._SpcAnalysis._OpName")]
        public ExcelPropety OpName_Excel = ExcelPropety.CreateProperty<SpcAnalysis>(x => x.OpName);
        [Display(Name = "_Model._SpcAnalysis._ChartType")]
        public ExcelPropety ChartType_Excel = ExcelPropety.CreateProperty<SpcAnalysis>(x => x.ChartType);
        [Display(Name = "_Model._SpcAnalysis._Code")]
        public ExcelPropety Code_Excel = ExcelPropety.CreateProperty<SpcAnalysis>(x => x.Code);
        [Display(Name = "_Model._SpcAnalysis._Desc")]
        public ExcelPropety Desc_Excel = ExcelPropety.CreateProperty<SpcAnalysis>(x => x.Desc);
        [Display(Name = "_Model._SpcAnalysis._DataName")]
        public ExcelPropety DataName_Excel = ExcelPropety.CreateProperty<SpcAnalysis>(x => x.DataName);
        [Display(Name = "_Model._SpcAnalysis._SimpleQty")]
        public ExcelPropety SimpleQty_Excel = ExcelPropety.CreateProperty<SpcAnalysis>(x => x.SimpleQty);
        [Display(Name = "_Model._SpcAnalysis._OpId")]
        public ExcelPropety OpId_Excel = ExcelPropety.CreateProperty<SpcAnalysis>(x => x.OpId);
        [Display(Name = "_Model._SpcAnalysis._Remark")]
        public ExcelPropety Remark_Excel = ExcelPropety.CreateProperty<SpcAnalysis>(x => x.Remark);
        [Display(Name = "_Model._SpcAnalysis._DataTag")]
        public ExcelPropety DataTag_Excel = ExcelPropety.CreateProperty<SpcAnalysis>(x => x.DataTag);
        [Display(Name = "_Model._SpcAnalysis._SubgroupSize")]
        public ExcelPropety SubgroupSize_Excel = ExcelPropety.CreateProperty<SpcAnalysis>(x => x.SubgroupSize);
        [Display(Name = "_Model._SpcAnalysis._CreateTime")]
        public ExcelPropety CreateTime_Excel = ExcelPropety.CreateProperty<SpcAnalysis>(x => x.CreateTime, true);
        [Display(Name = "_Model._SpcAnalysis._UpdateTime")]
        public ExcelPropety UpdateTime_Excel = ExcelPropety.CreateProperty<SpcAnalysis>(x => x.UpdateTime, true);
        [Display(Name = "_Model._SpcAnalysis._CreateBy")]
        public ExcelPropety CreateBy_Excel = ExcelPropety.CreateProperty<SpcAnalysis>(x => x.CreateBy);
        [Display(Name = "_Model._SpcAnalysis._UpdateBy")]
        public ExcelPropety UpdateBy_Excel = ExcelPropety.CreateProperty<SpcAnalysis>(x => x.UpdateBy);
        [Display(Name = "_Model._SpcAnalysis._IsValid")]
        public ExcelPropety IsValid_Excel = ExcelPropety.CreateProperty<SpcAnalysis>(x => x.IsValid);
        [Display(Name = "_Model._SpcAnalysis._TenantCode")]
        public ExcelPropety TenantCode_Excel = ExcelPropety.CreateProperty<SpcAnalysis>(x => x.TenantCode);

	    protected override void InitVM()
        {
            
        }

    }

    public class SpcAnalysisImportVM : BaseImportVM<SpcAnalysisTemplateVM, SpcAnalysis>
    {
            //import

    }

}